A switching node considered in the context of the present description comprises n1 input terminal modules and n2 output terminal modules, interconnected by an asynchronous cell switching network. In the remainder of the present description the input and output terminal modules are simply referred to as “input modules” and “output modules”, respectively.
In the switching node, an external data block received at an incoming port of an input module must be switched either to an outgoing port of a given output module, in which case it is called a unicast data block, or to outgoing ports of a plurality of output modules, in which case it is called a multicast data block.
If the external data blocks are received in the form of variable length packets they are converted into internal format cells in the input modules using techniques in the art. When they have been transferred to the destination output modules via the switching network, the internal format cells are converted back into external data blocks, cells or packets.
Within the switching node, the asynchronous switching network switches internal format cells, regardless of the external data block type, each cell being transferred from an incoming module to at least one destination outgoing module. In the input modules of the node, there are therefore two types of cells to be transferred across the switching network: a first type of cell, called a unicast cell, which must be routed to a given single destination output module, and a second type of cell, called a multicast cell, which must be routed to N given destination output modules of the n2 output modules of the node.
There are two prior art methods of converting a multicast cell into N cells to be delivered to the N respective destination output modules:
The first method consists in generating N copies of a multicast cell in the input module so that it then sends N unicast cells to the switching network, each cell being addressed to one of the N destination output modules required for that multicast cell.
In the second method, to which the invention relates, the input module sends a single example of the multicast cell to the switching network, and it is the network which generates N copied cells from the multicast cell and routes each of the N copied cells to the N respective destination output modules required for the multicast cell.
In the switching node, the streams of cells transferred across the switching network can cause congestion in the network whenever the overall bit rate of the cell traffic supplied to a given output module and coming from different input modules becomes excessive relative to the bandwidth authorized for access to the output module.
The conventional way to prevent such congestion in the switching network is for each input module to regulate the bit rates at which cells are transferred to each output module of the node so that the overall bit rate of the cell traffic supplied to each output module is not excessive.
To this end, each input module is provided with buffer memories for temporarily storing cells, and the buffer memories are structured in the form of queues, each of which corresponds to a given output module.
That prior art technique is well suited to regulating multicast cell traffic bit rate when multicast cells are sent to only one output module. However, that technique is not the optimum for regulating multicast cell traffic bit rate, since it provides a respective managed queue structure for each stream of outgoing cells comprising multicast cells supplied by the switching network to a given output module, whereas a single multicast cell is to be sent to N destination output modules. Furthermore, given that each multicast cell transmitted to the switching network by an input module generates within the network N cells supplied to the N destination output modules, the service bit rate of those cells should be regulated so that due account is taken of their respective contribution to each overall bit rate of cell traffic supplied to the N respective output modules, so that none of those overall bit rates is excessive. In theory, generalizing a principle of this kind to multicast cells would make it necessary to introduce a new dimension corresponding to the number of different subsets of N destination output modules selected from the n2 output modules of the node. This would quickly lead to excessive complexity once the number n2 of output modules were no longer small, as this would imply a large number of combinations of subsets of N from n2 output modules.